<template>
  <div class="HeadTime">{{ nowDate }}</div>
</template>

<script>
export default {
  name: 'HeadTime',
  data() {
    return {
      nowDate: '' //当前日期
    };
  },
  // filters: {
  // 	formatDate: function(value) {
  // 		var d = new Date(value);
  // 		var y = d.getFullYear();
  // 		var m = d.getMonth() + 1;
  // 		var day = d.getDate();
  // 		var wd = d.getDay();
  // 		return y + '年' + m + '月' + day + '日 星期' + wd;
  // 	}
  // },
  methods: {
    currentTime() {
      setInterval(this.formatDate, 500); //每隔5ms显示一次
    },
    formatDate() {
      let date = new Date();
      let year = date.getFullYear(); // 年
      let month = date.getMonth() + 1; // 月
      let day = date.getDate(); // 日
      let week = date.getDay(); // 星期
      let weekArr = ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'];
      let hour = date.getHours(); // 时
      hour = hour < 10 ? '0' + hour : hour; // 如果只有一位，则前面补零
      let minute = date.getMinutes(); // 分
      minute = minute < 10 ? '0' + minute : minute; // 如果只有一位，则前面补零
      let second = date.getSeconds(); // 秒
      second = second < 10 ? '0' + second : second; // 如果只有一位，则前面补零
      this.nowDate = `${year}年${month}月${day}日 ${hour}:${minute}:${second} ${weekArr[week]}`;
    }
  },
  mounted() {
    this.currentTime();
  },
  // 销毁定时器
  beforeDestroy() {
    if (this.formatDate) {
      clearInterval(this.formatDate); // 在Vue实例销毁前，清除时间定时器
    }
  }
};
</script>

<style>
.HeadTime{
  font-size: 15px;
}
</style>
